package thread;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.ThreadPoolExecutor;

public class ThreadDemo32 {
    public static void main(String[] args) {
      ExecutorService service = Executors.newFixedThreadPool(4);//创建线程池
        //创建线程池的时候,怎么设置合适数量的线程数量
//不同程序,能设计的线程的数量是不同的,要具体问题具体分析
        //一个线程是cpu密集型任务还是io密集型任务
        //CPU密集型:这个线程大部分的时间,都在cpu上运行,进行计算 线程不能超过N(cpu逻辑核心数)
        //IO密集型:这个线程大部分时间都在等待IO,不需要在cpu上运行 可以远远超过N
//但是大部分都一部分io一部分cpu
        //那么还是通过测试的方式来找到合适的线程数
        //设定不同的线程数目,进行性能测试
        //衡量每种数目下,效率最大化
      service.submit(new Runnable() {//把任务上传到线程池中
          @Override
          public void run() {
              System.out.println("hello");
          }
      });
    }
}
